namespace CSharpPro._1030;

public class Demo
{
    // private int id; //字段feild
    // private string name;
    //
    // //alt  +insert 生成属性
    // //属性 property
    //
    // public int Id
    // {
    //     get => id;
    //     set => id = value;
    // }
    //
    // public void TestPrint()
    // {
    //      Father father = new Father();
    //      father.Print();
    //     
    //      Child child = new Child();
    //      child.Print();
    //     
    //      Console.WriteLine("---------------");
    //      Father f1 = new Child();//编译看左 实现看右
    //      f1.Print();
    //      Father f2 = new Son();
    //      f2.Print();
    //     
    //     //int rusult = Add(10, 20);
    //     // Convert.ToInt32()
    // }
    // //方法重载  1.在同一个类中 2.两个完全相同的方法 3.形参的返回值不同，（顺序，或类型）
    // public int Add(int a, int b)
    // {
    //     return a + b;
    // }
    // public double Add(double a, int b)
    // {
    //     return a + b;
    // }
    // public double Add(int a, double b)
    // {
    //     return a + b;
    // }
    //
    // public static double Add(double a, double b)
    // {
    //     //TestPrint 静态方法中无法调用非静态方法
    //     return a + b;
    // }
    // //1.构造函数和析构函数不能被继承 2.继承是可传递的 3.派生类应该是对基类的扩展 4.抽象类不能被实例化
    // //抽象类
    // //接口
    public void TestPrint()
    {
        Child child = new Child();
        child.Print();
        
        Console.WriteLine("------------");
        Father f1 = new Child();
        f1.Print();
        Father f2 = new Son();
        f2.Print();
    }
}    